
using System;

namespace Normal.Lang
{
	// Token types.
	
	public enum TK
	{
		EOF,
		PAREN_OPEN,
		PAREN_CLOSE,
		SYMBOL,
		INTEGER,
		FLOAT,
		STRING
	}
	
	// A Token extracted by the Scanner from the source code
	// stream.
	
	public class Token
	{
		public TK type;
		public int line;
		public int column;
		public Object data;
		
		public Token(ScanReader sr)
		{
			this.line = sr.line;
			this.column = sr.column;
		}
		
		public Token(TK type, ScanReader sr)
		{
			this.type = type;
			this.line = sr.line;
			this.column = sr.column;
		}
	}
}
